iT邦幫忙

2021 iThome 鐵人賽

DAY 20
2
AI & Data

Data on AWS - 實作建立 Data Analytics Pipeline系列 第 20

【Day 20】 實作 - 於 AWS Quicksight 建立 Sankey diagram 以及設定 Action

  • 分享至 

  • xImage
  •  

昨天我們已經透過 AWS Glue Job 來調整 Partition 分區結構以及將此格式轉換成 Parquet以加快查詢速度。今天我們則會來使用 AWS Quicksight 建置 Sankey diagram 並介紹在 Quicksight 的一個功能 - Action,那我們就開始吧 GOGO
https://ithelp.ithome.com.tw/upload/images/20211005/20131073Nv4iPm5sHi.png


步驟一、搜尋 AWS Quicksight 服務


步驟二、新增 Dataset (資料集)

https://ithelp.ithome.com.tw/upload/images/20211004/20131073v55ybHKo2W.jpg


步驟三、選擇資料源為 Athena 並命名 Data source name

https://ithelp.ithome.com.tw/upload/images/20211004/20131073dlMgBQ5M50.jpg
https://ithelp.ithome.com.tw/upload/images/20211004/20131073cEM8cFTSWU.jpg


步驟四、點選 Use custom SQL 並貼上以下 SQL 語法按確認

SELECT * FROM "default"."vpclog_converted_log"
https://ithelp.ithome.com.tw/upload/images/20211004/20131073gJDb5Y8Er4.jpg
https://ithelp.ithome.com.tw/upload/images/20211004/20131073hvThi4AXDy.jpg


步驟五、點選 Edit / Preview 來確認資料集的狀況

https://ithelp.ithome.com.tw/upload/images/20211004/20131073ZNrXvZfyaC.jpg


步驟六、新增時間欄位

通常我們都會透過時間欄位去篩選資料,故觀察這個資料集竟然沒有時間的欄位,所以我們可以使用 start 這個欄位轉換成我們時間格式,而因為此 start 欄位為時間戳記,我們可以使用 epochDate 函數進行轉換成日期 [1],故我新建了一個 date 欄位並儲存
https://ithelp.ithome.com.tw/upload/images/20211004/20131073dY1kXHlycc.jpg


步驟七、調整欄位格式

我們觀察目前資料集發現有部分欄位它的格式自動判斷有問題,像是:srcport、dstport,這兩個欄位是在指說流量的來源與目標 port 號,應該為字串,可是系統判斷它為數值,因為這會影響到我們後續拉圖表時的 Dimension 判斷,故這邊我們調整這兩個欄位為 String
https://ithelp.ithome.com.tw/upload/images/20211004/20131073MQEFJZ7KPi.jpg

接著按 Save & visualize


步驟八、等到順利 Import 讀取完後,現在我們就可以來開始拉圖啦~

https://ithelp.ithome.com.tw/upload/images/20211004/20131073TQKqjZO8NW.jpg


步驟九、創建 桑基圖 (Sankey diagram) [2]

現在我想看 VPC 的流量動向(從哪裡流到哪裡),所以這邊我選擇使用 Sankey diagram,並 Source 選取來源 IP(srcaddr)、Destination 選取目的端 IP (dstaddr)並以 bytes (sum)為權重
https://ithelp.ithome.com.tw/upload/images/20211004/20131073vmuVsCi2Qm.jpg


步驟十、設定 Actions

現在我可以從 Sankey diagram 瞭解 VPC 流量動向(從哪裡流到哪裡),我想瞭解某一條流量它的細部內容,希望能做到點選圖表就可以顯示它的詳細紀錄,故我們可以透過 Actions 來達成
首先點選 Sankey diagram 的 Actions,接著點選 Define a custom action,點開裡面有相關設定:

  • Action name:自行輸入 Action 名稱
  • Activation:有分成兩個選項 – Select、Menu option,設定 Select 的話如果點選圖表它就會自動觸發Action,而設定 Menu option 的話,則需要點選圖表的右鍵並點選此 Action 名稱才會觸發 Action,這邊我們選擇Select
  • Action type:分成 Filter action、Navigation action、URL action 三種動作類型,Filter action 為可以依據設定進行資料篩選,Navigation action 則設定若點選此圖表可以導到其他 sheet 頁籤,URL action 則是導到其他 URL
    故這邊選擇 Filter action
  • Filter scope:要以哪些欄位進行篩選,我們選 All Fields
  • Target visuals:則是設定要針對哪些其他視覺化圖表進行篩選,我們選 All visuals
    https://ithelp.ithome.com.tw/upload/images/20211004/201310734PMiKzCLln.png

設定完後按 Save,這樣我們就可以點選某一條流量進一步查看更詳細的資訊
https://ithelp.ithome.com.tw/upload/images/20211004/20131073EfM1HvhYa2.png

好啦,那 VPC Log 實作告一個段落,明天我們則設定 CloudFront Log 蒐集以及分析設定
明天見囉 : D ~

如果有任何指點與建議,也歡迎留言交流,一起漫步在 Data on AWS 中。

參考&相關來源:
[1] epochDate 函數介紹
https://docs.aws.amazon.com/zh_tw/quicksight/latest/user/epochDate-function.html
[2] Using Sankey Diagrams in Amazon QuickSight
https://docs.aws.amazon.com/quicksight/latest/user/sankey-diagram.html


上一篇
【Day 19】 實作 - 透過 AWS 服務 Glue Job 調整 Partition 以及檔案格式
下一篇
【Day 21】 實作 - 啟用 AWS CloudFront 日誌
系列文
Data on AWS - 實作建立 Data Analytics Pipeline30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言